package com.lxmes.base.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.lxmes.common.annotation.Excel;
import com.lxmes.common.core.domain.BaseEntity;

/**
 * 供应商管理对象 nc_supplier
 *
 * @author ruoyi
 * @date 2022-11-29
 */
public class NcSupplier extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 公司代码 */
    @Excel(name = "公司代码")
    private String factoryCode;

    /** 公司名称 */
    @Excel(name = "公司名称")
    private String factoryName;

    /** 物料大类 */
//    @Excel(name = "物料大类")
    private String materialCategory;

    /** 子图号 */
//    @Excel(name = "子图号")
    private String itemChildNo;

    /** 物料号 */
//    @Excel(name = "物料号")
    private String materialNo;

    /** 供应商类别 */
    @Excel(name = "供应商类别")
    private String supplierCategory;

    /** 物料名称 */
//    @Excel(name = "物料名称")
    private String materialName;

    /** 供应商名称 */
    @Excel(name = "供应商名称")
    private String supplierName;

    /** 供应商代码 */
    @Excel(name = "供应商代码")
    private String supplierCode;

    /** 详细地址 */
    @Excel(name = "详细地址")
    private String address;

    /** 供应商电话 */
    @Excel(name = "供应商电话")
    private String supplierPhone;

    /** 供应商税号 */
    @Excel(name = "供应商税号")
    private String supplierEin;

    /** 供应商开户行 */
    @Excel(name = "供应商开户行")
    private String supplierBank;

    /** 供应商账号 */
    @Excel(name = "供应商账号")
    private String supplierAcc;

    /** 生产周期（天） */
//    @Excel(name = "生产周期", readConverterExp = "天=")
    private String proCycle;

    /** 供应商运输距离（KM） */
    @Excel(name = "供应商运输距离")
    private BigDecimal supplierTsKm;

    /** 供应商运输时间（小时） */
    @Excel(name = "供应商运输时间")
    private BigDecimal supplierTsTime;

    /** 供货周期（天） */
//    @Excel(name = "供货周期", readConverterExp = "天=")
    private BigDecimal deliveryCycle;

    /** 供货份额 */
//    @Excel(name = "供货份额")
    private String deliveryFe;

    /** 份额调整比例 */
//    @Excel(name = "份额调整比例")
    private BigDecimal adjustRate;

    /** 份额调整日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
//    @Excel(name = "份额调整日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date adjustDate;

    /** 月订单数量 */
//    @Excel(name = "月订单数量")
    private Long orderNumMonth;

    /** 月完成数量 */
//    @Excel(name = "月完成数量")
    private Long finishNumMonth;

    /** 月度供货未完成比率 */
//    @Excel(name = "月度供货未完成比率")
    private String nofinishRateMonth;

    /** 包装容量 */
//    @Excel(name = "包装容量")
    private Long packageCapacity;

    private String[] tsWays;

    private String tsType;

    private String supplierContact;

    private String supplierContactNumber;

    /** 部门数据隔离代码 */
    private Long deptId;

    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }



    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setFactoryCode(String factoryCode)
    {
        this.factoryCode = factoryCode;
    }

    public String getFactoryCode()
    {
        return factoryCode;
    }
    public void setFactoryName(String factoryName)
    {
        this.factoryName = factoryName;
    }

    public String getFactoryName()
    {
        return factoryName;
    }
    public void setMaterialCategory(String materialCategory)
    {
        this.materialCategory = materialCategory;
    }

    public String getMaterialCategory()
    {
        return materialCategory;
    }
    public void setItemChildNo(String itemChildNo)
    {
        this.itemChildNo = itemChildNo;
    }

    public String getItemChildNo()
    {
        return itemChildNo;
    }
    public void setMaterialNo(String materialNo)
    {
        this.materialNo = materialNo;
    }

    public String getMaterialNo()
    {
        return materialNo;
    }
    public void setSupplierCategory(String supplierCategory)
    {
        this.supplierCategory = supplierCategory;
    }

    public String getSupplierCategory()
    {
        return supplierCategory;
    }
    public void setMaterialName(String materialName)
    {
        this.materialName = materialName;
    }

    public String getMaterialName()
    {
        return materialName;
    }
    public void setSupplierName(String supplierName)
    {
        this.supplierName = supplierName;
    }

    public String getSupplierName()
    {
        return supplierName;
    }
    public void setSupplierCode(String supplierCode)
    {
        this.supplierCode = supplierCode;
    }

    public String getSupplierCode()
    {
        return supplierCode;
    }
    public void setAddress(String address)
    {
        this.address = address;
    }

    public String getAddress()
    {
        return address;
    }
    public void setSupplierPhone(String supplierPhone)
    {
        this.supplierPhone = supplierPhone;
    }

    public String getSupplierPhone()
    {
        return supplierPhone;
    }
    public void setSupplierEin(String supplierEin)
    {
        this.supplierEin = supplierEin;
    }

    public String getSupplierEin()
    {
        return supplierEin;
    }
    public void setSupplierBank(String supplierBank)
    {
        this.supplierBank = supplierBank;
    }

    public String getSupplierBank()
    {
        return supplierBank;
    }
    public void setSupplierAcc(String supplierAcc)
    {
        this.supplierAcc = supplierAcc;
    }

    public String getSupplierAcc()
    {
        return supplierAcc;
    }
    public void setProCycle(String proCycle)
    {
        this.proCycle = proCycle;
    }

    public String getProCycle()
    {
        return proCycle;
    }
    public void setSupplierTsKm(BigDecimal supplierTsKm)
    {
        this.supplierTsKm = supplierTsKm;
    }

    public BigDecimal getSupplierTsKm()
    {
        return supplierTsKm;
    }
    public void setSupplierTsTime(BigDecimal supplierTsTime)
    {
        this.supplierTsTime = supplierTsTime;
    }

    public BigDecimal getSupplierTsTime()
    {
        return supplierTsTime;
    }
    public void setDeliveryCycle(BigDecimal deliveryCycle)
    {
        this.deliveryCycle = deliveryCycle;
    }

    public BigDecimal getDeliveryCycle()
    {
        return deliveryCycle;
    }
    public void setDeliveryFe(String deliveryFe)
    {
        this.deliveryFe = deliveryFe;
    }

    public String getDeliveryFe()
    {
        return deliveryFe;
    }
    public void setAdjustRate(BigDecimal adjustRate)
    {
        this.adjustRate = adjustRate;
    }

    public BigDecimal getAdjustRate()
    {
        return adjustRate;
    }
    public void setAdjustDate(Date adjustDate)
    {
        this.adjustDate = adjustDate;
    }

    public Date getAdjustDate()
    {
        return adjustDate;
    }
    public void setOrderNumMonth(Long orderNumMonth)
    {
        this.orderNumMonth = orderNumMonth;
    }

    public Long getOrderNumMonth()
    {
        return orderNumMonth;
    }
    public void setFinishNumMonth(Long finishNumMonth)
    {
        this.finishNumMonth = finishNumMonth;
    }

    public Long getFinishNumMonth()
    {
        return finishNumMonth;
    }
    public void setNofinishRateMonth(String nofinishRateMonth)
    {
        this.nofinishRateMonth = nofinishRateMonth;
    }

    public String getNofinishRateMonth()
    {
        return nofinishRateMonth;
    }
    public void setPackageCapacity(Long packageCapacity)
    {
        this.packageCapacity = packageCapacity;
    }

    public Long getPackageCapacity()
    {
        return packageCapacity;
    }

    public String[] getTsWays() {
        return tsWays;
    }

    public void setTsWays(String[] tsWays) {
        this.tsWays = tsWays;
    }

    public String getTsType() {
        return tsType;
    }

    public void setTsType(String tsType) {
        this.tsType = tsType;
    }

    public String getSupplierContact() {
        return supplierContact;
    }

    public void setSupplierContact(String supplierContact) {
        this.supplierContact = supplierContact;
    }

    public String getSupplierContactNumber() {
        return supplierContactNumber;
    }

    public void setSupplierContactNumber(String supplierContactNumber) {
        this.supplierContactNumber = supplierContactNumber;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("factoryCode", getFactoryCode())
            .append("factoryName", getFactoryName())
            .append("materialCategory", getMaterialCategory())
            .append("itemChildNo", getItemChildNo())
            .append("materialNo", getMaterialNo())
            .append("supplierCategory", getSupplierCategory())
            .append("materialName", getMaterialName())
            .append("supplierName", getSupplierName())
            .append("supplierCode", getSupplierCode())
            .append("address", getAddress())
            .append("supplierPhone", getSupplierPhone())
            .append("supplierEin", getSupplierEin())
            .append("supplierBank", getSupplierBank())
            .append("supplierAcc", getSupplierAcc())
            .append("proCycle", getProCycle())
            .append("supplierTsKm", getSupplierTsKm())
            .append("supplierTsTime", getSupplierTsTime())
            .append("deliveryCycle", getDeliveryCycle())
            .append("deliveryFe", getDeliveryFe())
            .append("adjustRate", getAdjustRate())
            .append("adjustDate", getAdjustDate())
            .append("orderNumMonth", getOrderNumMonth())
            .append("finishNumMonth", getFinishNumMonth())
            .append("nofinishRateMonth", getNofinishRateMonth())
            .append("packageCapacity", getPackageCapacity())
            .toString();
    }
}
